package org.jeecg.modules.demo.safemanage.zyhazardinvestigation.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.demo.safemanage.zyhazardinvestigation.entity.ZyRectificationInformation;
import org.jeecg.modules.demo.safemanage.zyhazardinvestigation.entity.ZyReviewInformation;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.List;


/**
 * @Description: 中阳隐患排查信息
 * @Author: jeecg-boot
 * @Date:   2024-03-20
 * @Version: V1.0
 */
@Data
@Schema(name="zy_hazard_investigationPage对象", description="中阳隐患排查信息")
public class ZyHazardInvestigationPage {

	/**工地id*/
	@Excel(name = "工地id", width = 15)
	@Schema(name = "工地id")
	private String siteId;
	/**主键*/
	@Schema(name = "主键")
    private String id;
	/**创建人*/
	@Schema(name = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@Schema(name = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
	@Schema(name = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@Schema(name = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
	@Schema(name = "所属部门")
    private String sysOrgCode;
	/**检查结果*/
	@Excel(name = "检查结果", width = 15)
	@Schema(name = "检查结果")
    private String result;
	/** 检查人*/
	@Excel(name = " 检查人", width = 15)
	@Schema(name = " 检查人")
    private String inspectionPersonnel;
	/**问题类型*/
	@Excel(name = "问题类型", width = 15, dicCode = "zy_safe_type")
	@Dict(dicCode = "zy_safe_type")
	@Schema(name = "问题类型")
	private String qualityType;
	/**问题描述*/
	@Excel(name = "举一反三自查问题", width = 15)
	@Schema(name = "举一反三自查问题")
    private String problemDescription;
	/** 整改期限*/
	@Excel(name = " 整改期限", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@Schema(name = " 整改期限")
    private java.util.Date rectificationDeadline;
	/**整改人*/
	@Excel(name = "整改人", width = 15)
	@Schema(name = "整改人")
    private String rectifierPerson;
	/**复查人*/
	@Excel(name = "复查人", width = 15)
	@Schema(name = "复查人")
    private String reviewerPerson;
	/**问题照片*/
	@Excel(name = "问题照片", width = 15,type = 2)
	@Schema(name = "问题照片")
    private String problemPhoto;
	/** 结论*/
	@Excel(name = " 结论", width = 15)
	@Schema(name = " 结论")
    private String conclusion;
	/**复查状态*/
	@Excel(name = "复查状态", width = 15, dicCode = "zy_review_status")
    @Dict(dicCode = "zy_review_status")
	@Schema(name = "复查状态")
    private String reviewerStatus;
	/**整改状态*/
	@Excel(name = "整改状态", width = 15, dicCode = "zy_rectifier_status")
    @Dict(dicCode = "zy_rectifier_status")
	@Schema(name = "整改状态")
    private String rectifierStatus;

	@ExcelCollection(name="中阳整改信息")
	@Schema(name = "中阳整改信息")
	private List<ZyRectificationInformation> zyRectificationInformationList;
	@ExcelCollection(name="中阳复查信息")
	@Schema(name = "中阳复查信息")
	private List<ZyReviewInformation> zyReviewInformationList;

	/**实例id*/
	@Excel(name = "实例id", width = 15)
	@Schema(name = "实例id")
	private String instanceId;

	//文件路径
	private String file;
	//文件名
	private String fileName;

	//共性问题
	private String commonProblem;

	//整改措施
	private String measure;

	//进展情况
	private String progress;

	//责任部门
	private String department;

	/**父级id*/
	private String pid;
	/**是否有子级*/
	private String hasChild;
	/**职级*/
	private String level;
	/**以前是否发现问题*/
	@Excel(name = "以前是否发现问题", width = 15)
	@Schema(name = "以前是否发现问题")
	private String flag;

	private int count;

	//是否完成
	private String isComplete;

}
